public class OneBitAndTwoBitCharacters {
    /**
     * 有两种特殊字符：
     *
     * 第一种字符可以用一个比特0来表示
     * 第二种字符可以用两个比特(10或11)来表示、
     * 给定一个以 0 结尾的二进制数组bits，如果最后一个字符必须是一位字符，则返回 true 。
     *
     * 来源：力扣（LeetCode）
     * 链接：https://leetcode-cn.com/problems/1-bit-and-2-bit-characters
     * 著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。
     * @param bits
     * @return
     */
    public boolean isOneBitCharacter(int[] bits) {
        int n = bits.length, i = 0;
        while (i < n - 1) {
            i += bits[i] + 1;
        }
        return i == n - 1;
    }



}
